package com.czk.bootlettuce.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.ClassPathResource;
import org.springframework.data.redis.core.script.DefaultRedisScript;
import org.springframework.scripting.support.ResourceScriptSource;

/**
 * lua脚本配置类
 *
 * @Author:ChenZhangKun
 * @Date: 2021/11/5 23:42
 */
@Configuration
public class LuaConfig {
    @Bean
    public DefaultRedisScript<Long> defaultRedisScript() {
        DefaultRedisScript<Long> defaultRedisScript = new DefaultRedisScript<>();
        // 加载lua脚本
        defaultRedisScript.setScriptSource(new ResourceScriptSource(new ClassPathResource("lua/limit.lua")));
        defaultRedisScript.setResultType(Long.class);
        return defaultRedisScript;
    }
}
